1. Field of the Invention
The present invention relates to an improved data processing system and, in particular, to a method and apparatus for multicomputer data transferring. Still more particularly, the present invention is directed to networked computer systems.
2. Description of Related Art
Enterprises generally desire to provide authorized users with secure access to protected resources in a user-friendly manner throughout a variety of networks, including the Internet. Although providing secure authentication mechanisms reduces the risks of unauthorized access to protected resources, those authentication mechanisms may become barriers to accessing protected resources. Users generally desire the ability to change from interacting with one application to another application without regard to authentication barriers that protect each particular system supporting those applications.
As users get more sophisticated, they expect that computer systems coordinate their actions so that burdens on the user are reduced. These types of expectations also apply to authentication processes. A user might assume that once he or she has been authenticated by some computer system, the authentication should be valid throughout the user's working session, or at least for a particular period of time, without regard to the various computer architecture boundaries that are almost invisible to the user. Enterprises generally try to fulfill these expectations in the operational characteristics of their deployed systems, not only to placate users but also to increase user efficiency, whether the user efficiency is related to employee productivity or customer satisfaction.
More specifically, with the current computing environment in which many applications have a Web-based user interface that is accessible through a common browser, users expect more user-friendliness and low or infrequent barriers to movement from one Web-based application to another. In this context, users are coming to expect the ability to jump from interacting with an application on one Internet domain to another application on another domain without regard to the authentication barriers that protect each particular domain. However, even if many systems provide secure authentication through easy-to-use, Web-based interfaces, a user may still be forced to reckon with multiple authentication processes that stymie user access across a set of domains. Subjecting a user to multiple authentication processes in a given time frame may significantly affect the user's efficiency.
For example, various techniques have been used to reduce authentication burdens on users and computer system administrators. These techniques are generally described as “single-sign-on” (SSO) processes because they have a common purpose: after a user has completed a sign-on operation, i.e. been authenticated, the user is subsequently not required to perform another authentication operation. Hence, the goal is that the user would be required to complete only one authentication process during a particular user session.
To reduce the costs of user management and to improve interoperability among enterprises, federated computing spaces have been created. A federation is a loosely coupled affiliation of enterprises which adhere to certain standards of interoperability; the federation provides a mechanism for trust among those enterprises with respect to certain computational operations for the users within the federation. For example, a federation partner may act as a user's home domain or identity provider. Other partners within the same federation may rely on the user's identity provider for primary management of the user's authentication credentials, e.g., accepting a single-sign-on token that is provided by the user's identity provider.
As enterprises move to support federated business interactions, these enterprises should provide a user experience that reflects the increased cooperation between two businesses and minimizes the operational burdens of a user. Within these federations, these enterprises have begun to interoperate to support a variety of federation protocols of which a user may be unaware or may be only minimally aware. For example, federated enterprises may perform various types of operations for user account management, such as managing a user-specific alias identifier, that might require minimal interaction with the user to complete an operation. The federated enterprises should cooperate to an extent that the user is not confused or overburdened with knowledge of the underlying mechanism by which such types of operations are coordinated.
However, there is a tradeoff that should be considered in the implementation of these operations within a federation. Such operations, such as those that might require minimal interaction with the user to complete an operation, should also be performed in a manner that is efficient for the federated enterprises, particularly for those types of operations that might be required across all users within an enterprise. For example, when a particular operation needs to be performed on behalf of thousands or millions of users, such as all customers of a particular enterprise, the mechanism for performing the operation needs to be scalable such that it does not overburden the computational resources of the federated enterprise, yet these various types of operations may be implemented in a variety of ways that vary in their burdens upon the federated enterprises that are involved with the necessary operation. In other words, the implementation of a given federated operation may vary in its burden upon a user in terms of user interaction and its burden upon a federated enterprise in terms of consumption of computational resources, and the tradeoff that is involved in the techniques should be manageable and/or configurable within a federated enterprise.
Therefore, it would be advantageous to implement a federated infrastructure such that federated operations within the data processing systems of the federated enterprises can be efficiently and configurably managed. It would be particularly advantageous to configurably manage federated operations in a scalable manner through the use of policies and related policy management mechanisms.